package com.ruoyi.project.module.application.domain;

import com.ruoyi.project.module.applicationProperty.domain.ApplicationProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.util.Date;
import java.util.List;

/**
 * 配置应用管理表 config_application
 * 
 * @author ruoyi
 * @date 2018-11-06
 */
public class Application extends BaseEntity
{
	private static final long serialVersionUID = 1L;
	
	/** 应用ID */
	private Long configApplicationId;
	/** 应用所在IP地址[用于查看端口是否重复] */
	private String ipv4;
	/** test测试,dev开发,pre预发布,prod生产环境 */
	private String profileType;
	/** 描述 */
	private String description;
	/** 创建者 */
	private String createBy;
	/** 创建时间 */
	private Date createTime;
	/** 更新者 */
	private String updateBy;
	/** 更新时间 */
	private Date updateTime;
	/** 备注 */
	private String remark;
	/** 应用名称 */
	private String appName;
	/** 服务类型[dubbo,app,mq] */
	private String serverType;
	/** 状态[停用,启用] */
	private String status;
	/** 是否修改[0:未修改,1:已修改] */
	private Integer modify;
	/** 最高版本号 */
	private Integer maxVersion;
	/** 当前版本号 */
	private Integer currentVersion;

	/** 发布版本号 */
	private Integer releaseVersion;

	private List<ApplicationProperty> configApplicationPropertyList;

	public List<ApplicationProperty> getConfigApplicationPropertyList() {
		return configApplicationPropertyList;
	}

	public void setConfigApplicationPropertyList(List<ApplicationProperty> configApplicationPropertyList) {
		this.configApplicationPropertyList = configApplicationPropertyList;
	}

	public void setConfigApplicationId(Long configApplicationId)
	{
		this.configApplicationId = configApplicationId;
	}

	public Long getConfigApplicationId()
	{
		return configApplicationId;
	}
	public void setIpv4(String ipv4) 
	{
		this.ipv4 = ipv4;
	}

	public String getIpv4() 
	{
		return ipv4;
	}
	public void setProfileType(String profileType) 
	{
		this.profileType = profileType;
	}

	public String getProfileType() 
	{
		return profileType;
	}
	public void setDescription(String description) 
	{
		this.description = description;
	}

	public String getDescription() 
	{
		return description;
	}
	public void setCreateBy(String createBy) 
	{
		this.createBy = createBy;
	}

	public String getCreateBy() 
	{
		return createBy;
	}
	public void setCreateTime(Date createTime) 
	{
		this.createTime = createTime;
	}

	public Date getCreateTime() 
	{
		return createTime;
	}
	public void setUpdateBy(String updateBy) 
	{
		this.updateBy = updateBy;
	}

	public String getUpdateBy() 
	{
		return updateBy;
	}
	public void setUpdateTime(Date updateTime) 
	{
		this.updateTime = updateTime;
	}

	public Date getUpdateTime() 
	{
		return updateTime;
	}
	public void setRemark(String remark) 
	{
		this.remark = remark;
	}

	public String getRemark() 
	{
		return remark;
	}
	public void setAppName(String appName) 
	{
		this.appName = appName;
	}

	public String getAppName() 
	{
		return appName;
	}
	public void setServerType(String serverType) 
	{
		this.serverType = serverType;
	}

	public String getServerType() 
	{
		return serverType;
	}
	public void setStatus(String status) 
	{
		this.status = status;
	}

	public String getStatus() 
	{
		return status;
	}
	public void setModify(Integer modify) 
	{
		this.modify = modify;
	}

	public Integer getModify() 
	{
		return modify;
	}
	public void setMaxVersion(Integer maxVersion) 
	{
		this.maxVersion = maxVersion;
	}

	public Integer getMaxVersion() 
	{
		return maxVersion;
	}
	public void setCurrentVersion(Integer currentVersion) 
	{
		this.currentVersion = currentVersion;
	}

	public Integer getCurrentVersion() 
	{
		return currentVersion;
	}

    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("configApplicationId", getConfigApplicationId())
            .append("ipv4", getIpv4())
            .append("profileType", getProfileType())
            .append("description", getDescription())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("appName", getAppName())
            .append("serverType", getServerType())
            .append("status", getStatus())
            .append("modify", getModify())
            .append("maxVersion", getMaxVersion())
            .append("currentVersion", getCurrentVersion())
            .append("releaseVersion", getReleaseVersion())
            .toString();
    }

	public Integer getReleaseVersion() {
		return releaseVersion;
	}

	public void setReleaseVersion(Integer releaseVersion) {
		this.releaseVersion = releaseVersion;
	}
}
